package com.hl.ruoyilkshop.domain;

import java.math.BigDecimal;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 商品管理对象 goods
 * 
 * @author ruoyi
 * @date 2025-08-07
 */
public class Goods extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 商品ID */
    private Long goodsId;

    /** 商家ID */
    @Excel(name = "商家ID")
    private Long businessId;

    /** 商品名称 */
    @Excel(name = "商品名称")
    private String goodsName;

    /** 商品分类ID */
    @Excel(name = "商品分类ID")
    private Long classId;

    /** 商品价格 */
    @Excel(name = "商品价格")
    private BigDecimal goodsPrice;

    /** 商品积分价格 */
    @Excel(name = "商品积分价格")
    private Long goodsPoint;

    /** 是否是积分商品(0-否,1-是) */
    @Excel(name = "是否是积分商品(0-否,1-是)")
    private Long goodsPointType;

    /** 是否折扣(0-否,1-是) */
    @Excel(name = "是否折扣(0-否,1-是)")
    private Long goodsDiscountType;

    /** 是否秒杀(0-否,1-是) */
    @Excel(name = "是否秒杀(0-否,1-是)")
    private Long goodsKillType;

    /** 是否团购(0-否,1-是) */
    @Excel(name = "是否团购(0-否,1-是)")
    private Long goodsGroupType;

    /** 团购价 */
    @Excel(name = "团购价")
    private BigDecimal goodsGroupPrice;

    /** 折扣价 */
    @Excel(name = "折扣价")
    private BigDecimal goodsDiscount;

    /** 秒杀价 */
    @Excel(name = "秒杀价")
    private BigDecimal goodsMiaosha;

    /** 商品状态(0-下架,1-上架) */
    @Excel(name = "商品状态(0-下架,1-上架)")
    private Long goodsStatus;

    /** 商品数量 */
    @Excel(name = "商品数量")
    private Long goodsNumber;

    /** 商品图片 */
    @Excel(name = "商品图片")
    private String goodsImg;

    /** 商品视频 */
    @Excel(name = "商品视频")
    private String goodsVideo;

    /** 商品店内分类id */
    @Excel(name = "商品店内分类id")
    private String businessClassId;

    /** 是否是虚拟商品（0实物，1虚拟） */
    @Excel(name = "是否是虚拟商品", readConverterExp = "0=实物，1虚拟")
    private String goodsVirtual;

    /** 计量单位 */
    @Excel(name = "计量单位")
    private String unit;

    public void setGoodsId(Long goodsId) 
    {
        this.goodsId = goodsId;
    }

    public Long getGoodsId() 
    {
        return goodsId;
    }

    public void setBusinessId(Long businessId) 
    {
        this.businessId = businessId;
    }

    public Long getBusinessId() 
    {
        return businessId;
    }

    public void setGoodsName(String goodsName) 
    {
        this.goodsName = goodsName;
    }

    public String getGoodsName() 
    {
        return goodsName;
    }

    public void setClassId(Long classId) 
    {
        this.classId = classId;
    }

    public Long getClassId() 
    {
        return classId;
    }

    public void setGoodsPrice(BigDecimal goodsPrice) 
    {
        this.goodsPrice = goodsPrice;
    }

    public BigDecimal getGoodsPrice() 
    {
        return goodsPrice;
    }

    public void setGoodsPoint(Long goodsPoint) 
    {
        this.goodsPoint = goodsPoint;
    }

    public Long getGoodsPoint() 
    {
        return goodsPoint;
    }

    public void setGoodsPointType(Long goodsPointType) 
    {
        this.goodsPointType = goodsPointType;
    }

    public Long getGoodsPointType() 
    {
        return goodsPointType;
    }

    public void setGoodsDiscountType(Long goodsDiscountType) 
    {
        this.goodsDiscountType = goodsDiscountType;
    }

    public Long getGoodsDiscountType() 
    {
        return goodsDiscountType;
    }

    public void setGoodsKillType(Long goodsKillType) 
    {
        this.goodsKillType = goodsKillType;
    }

    public Long getGoodsKillType() 
    {
        return goodsKillType;
    }

    public void setGoodsGroupType(Long goodsGroupType) 
    {
        this.goodsGroupType = goodsGroupType;
    }

    public Long getGoodsGroupType() 
    {
        return goodsGroupType;
    }

    public void setGoodsGroupPrice(BigDecimal goodsGroupPrice) 
    {
        this.goodsGroupPrice = goodsGroupPrice;
    }

    public BigDecimal getGoodsGroupPrice() 
    {
        return goodsGroupPrice;
    }

    public void setGoodsDiscount(BigDecimal goodsDiscount) 
    {
        this.goodsDiscount = goodsDiscount;
    }

    public BigDecimal getGoodsDiscount() 
    {
        return goodsDiscount;
    }

    public void setGoodsMiaosha(BigDecimal goodsMiaosha) 
    {
        this.goodsMiaosha = goodsMiaosha;
    }

    public BigDecimal getGoodsMiaosha() 
    {
        return goodsMiaosha;
    }

    public void setGoodsStatus(Long goodsStatus) 
    {
        this.goodsStatus = goodsStatus;
    }

    public Long getGoodsStatus() 
    {
        return goodsStatus;
    }

    public void setGoodsNumber(Long goodsNumber) 
    {
        this.goodsNumber = goodsNumber;
    }

    public Long getGoodsNumber() 
    {
        return goodsNumber;
    }

    public void setGoodsImg(String goodsImg) 
    {
        this.goodsImg = goodsImg;
    }

    public String getGoodsImg() 
    {
        return goodsImg;
    }

    public void setGoodsVideo(String goodsVideo) 
    {
        this.goodsVideo = goodsVideo;
    }

    public String getGoodsVideo() 
    {
        return goodsVideo;
    }

    public void setBusinessClassId(String businessClassId) 
    {
        this.businessClassId = businessClassId;
    }

    public String getBusinessClassId() 
    {
        return businessClassId;
    }

    public void setGoodsVirtual(String goodsVirtual) 
    {
        this.goodsVirtual = goodsVirtual;
    }

    public String getGoodsVirtual() 
    {
        return goodsVirtual;
    }

    public void setUnit(String unit) 
    {
        this.unit = unit;
    }

    public String getUnit() 
    {
        return unit;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("goodsId", getGoodsId())
            .append("businessId", getBusinessId())
            .append("goodsName", getGoodsName())
            .append("classId", getClassId())
            .append("goodsPrice", getGoodsPrice())
            .append("goodsPoint", getGoodsPoint())
            .append("goodsPointType", getGoodsPointType())
            .append("goodsDiscountType", getGoodsDiscountType())
            .append("goodsKillType", getGoodsKillType())
            .append("goodsGroupType", getGoodsGroupType())
            .append("goodsGroupPrice", getGoodsGroupPrice())
            .append("goodsDiscount", getGoodsDiscount())
            .append("goodsMiaosha", getGoodsMiaosha())
            .append("goodsStatus", getGoodsStatus())
            .append("goodsNumber", getGoodsNumber())
            .append("goodsImg", getGoodsImg())
            .append("goodsVideo", getGoodsVideo())
            .append("businessClassId", getBusinessClassId())
            .append("goodsVirtual", getGoodsVirtual())
            .append("unit", getUnit())
            .append("createTime", getCreateTime())
            .toString();
    }
}
